
<?php

/*
 <!--/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
Autor: Jordan Campos Delgado
Fecha: 05/07/2012
Descripción: Modelo de consultas y transacciones creacion de metodos geneericos 
 *           o utilizados en diversos mantenimierntos y requerimientos.
Bitacora de modificaciones:
    <
    Autor: 
    Fecha: 
    Descripción: 
    >
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////-->

 */


function conexion(){
      
      // $dsn = "Driver={SQL Server};Server=localhost\sqlexpress;Database=axplus;Integrated Security=SSPI;Persist Security Info=False;";
      // $conexion = odbc_connect( $dsn, 'axplus ', 'axplus035' );
    require_once 'conexionAXPLUS.php';
    //$con = new conexionBD('localhost','axplus','sa','jcamposd035');//En la pc 
    $con = new conexionBD('sj-test','AXPlus','axplus','axplus035');//En la pc 
    $conexion=$con->conectar($con->getServidor(), $con->getBaseDatos(),$con->getUsuario(),$con->getContrasena());
       if (!$conexion) {
           require 'paginaPrincipal.php?accion=paginaPrincipal';
           //exit( "Error al conectar: " . $conexion);
           
        }
        return $conexion;
    }
    
function conexion_AX(){
    //$dsn = "Driver={SQL Server};Server=sj-jcamposd;Database=axplus;Integrated Security=SSPI;Persist Security Info=False;";
    //$dsn = "Driver={SQL Server};Server=sj-jvindas;Database=guia;Integrated Security=SSPI;Persist Security Info=False;";  
    require_once 'conexionAXPLUS.php';
    $con = new conexionBD('sj-test','NumarTest','axplus','axplus035');//En la pc 
    //$con = new conexionBD('localhost','NumarProd','sa','patito035');//En la pc 
    $conexion=$con->conectar($con->getServidor(), $con->getBaseDatos(),$con->getUsuario(),$con->getContrasena());
    if (!$conexion) {
        exit( "Error al conectar: " . $conexion);
    }
    return $conexion;
}
    
    function buscarTodosLasCompanias(){
        
        $rs = odbc_exec(conexion_AX(), "select * from dataarea where ISVIRTUAL = 0");
        $items=Array();
            while (odbc_fetch_row($rs)){
                $item['Id']=utf8_decode(odbc_result($rs,"id"));
                $item['Name']=odbc_result($rs,"name");
                array_push($items,$item);
            }
        odbc_close(conexion_AX());
        return $items;
    }
    
   function validaUsuarioAxPlus($userLogin,$pass){
       try{
           
         require_once 'FirePHPCore/FirePHP.class.php';
        $firephp = FirePHP::getInstance(true);
        $firephp->log("companias", "buscando");
        $select="select * from dbo.FUN002ValidaUsuario('".$userLogin."','".$pass."')";
        $firephp->log($select, "$select");
        $rs = odbc_exec(conexion(),$select );
        $items=Array();
            while (odbc_fetch_row($rs)){
                $item['Username']=odbc_result($rs,"Username");
                $item['Nombre']=odbc_result($rs,"Nombre");
                $item['Apellidos']=odbc_result($rs,"Apellidos");
                $item['Rol']=odbc_result($rs,"Rol");
                array_push($items,$item);
               $firephp->log($item, "for item");
            }
        odbc_close(conexion());
        return $items;
           
       }
           catch (Exception $e) {
               echo 'No se encontro usuario';
        //echo 'Excepción capturada: ',  $e->getMessage(), "\n";

        }
   }

function buscarPermiso($metodo,$usuario) {
    require_once 'FirePHPCore/FirePHP.class.php';
    $firephp = FirePHP::getInstance(true);
    $firephp->log($metodo, "metodo");    
    $busqueda="select dbo.FUN001ConsultaPermisos('".$metodo."','".$usuario."') as Resultado;";
    $firephp->log($busqueda, "buscarPermiso");
        
        $rs =odbc_exec(conexion(),$busqueda );
        while (odbc_fetch_row($rs)){
                $Resultado=odbc_result($rs,"Resultado");                                      
               
            }
       
        $firephp->log($Resultado, "Resultado");
        if($Resultado==1){
            $valor = 'yes';
            //$firephp->log($valor, "valor");
            return true;} 
        else {
            $valor = 'NO';
            //$firephp->log($valor, "valor");
            return false;}
        
        
        
        
} 

/*Funcion para actualizar contraseña de Usuario*/
    function actualizaPassword($Username,$Password)
    {                
        require_once 'dataModelo.php';
        $conexion=conexion();
        $update="Update Usuarios set password ='".$Password."' where Username='".$Username."'";        
        if (!odbc_exec($conexion,$update))
        {
            die('Error: ' . odbc_error());
        }
        odbc_close($conexion);
    }

    function buscarPermisoPrueba($metodo,$usuario) {
    require_once 'FirePHPCore/FirePHP.class.php';
    $firephp = FirePHP::getInstance(true);
    $firephp->log($metodo, "metodo");    
    $busqueda="select dbo.FUN001ConsultaPermisos('".$metodo."','".$usuario."') as Resultado;";
    $firephp->log($busqueda, "buscarPermiso");
        $existe=0;
        $rs =odbc_exec(conexion(),$busqueda );
        //if (odbc_num_rows($rs)>0){}
        while (odbc_fetch_row($rs)){
                $Resultado=odbc_result($rs,"Resultado");                                      
                $existe=$Resultado;
            }
       
        $firephp->log($Resultado, "Resultado");
        
		if($Resultado==1){
            $valor = '1';
        //$firephp->log($valor, "valor");
        
            return 1;} 
        else {
            $valor = '0';
            //$firephp->log($valor, "valor");
            return 0;}
        //$firephp->log($existe, "existe");
        
        //return 1;
        
        
} 

  /*Funcion para agregar Usuarios*/
    function agregarUsuario($Username,$Password,$Nombre,$Apellidos)
    {                
        require_once 'dataModelo.php';
        $conexion=conexion();
        $insert="Insert into Usuarios (Username,Password,Nombre,Apellidos,Estado) values('$Username','$Password','$Nombre','$Apellidos','A')";        
        if (!odbc_exec($conexion,$insert))
        {
            die('Error: ' . odbc_error());
        }
        odbc_close($conexion);
    }
    
    /*Funcion para agregar Usuarios*/
    function agregarAsignaRol($Username,$Rol)
    {                
        require_once 'dataModelo.php';
        $conexion=conexion();
        $insert="Insert into AsignaRoles (Username,Rol) values('$Username','$Rol')";        
        if (!odbc_exec($conexion,$insert))
        {
            die('Error: ' . odbc_error());
        }
        odbc_close($conexion);
    }
    
    function encontrarUsuarioDuplicado($Username)
    {
        require_once 'dataModelo.php';
        $existe=false;
        $conexion=conexion();
        $rs = odbc_exec($conexion,  "select Username from usuarios where Username='".$Username."'");          
        if (!$conexion) 
        {           
           exit( "Error al conectar: " . $conexion);
        }
        $existe=odbc_fetch_row($rs);
        odbc_close($conexion);
        return $existe;
    }
    
    function validadorUsuarioAdministradoGeneral()
    {
        require_once 'dataModelo.php';
		require_once 'FirePHPCore/FirePHP.class.php';
		$firephp = FirePHP::getInstance(true);
		$firephp->log('validadorUsuarioAdministradoGeneral', "validadorUsuarioAdministradoGeneral");
        $existe=false;
		$valida="NO";
        $conexion=conexion();
		$select = "select nombre from roles where Nombre = 'Administrador General' and CodigoRol='".$_SESSION["s_rol"]."'";
		$firephp->log($select, "select");
        $rs = odbc_exec($conexion,$select);
		$firephp->log($rs, "$rs");		
        if (!$conexion) 
        {           
           exit( "Error al conectar: " . $conexion);
        }
        $existe=odbc_fetch_row($rs);
		$firephp->log($valida, "existe");
        odbc_close($conexion);
		
        return $existe;
    }
    
    function buscarIdDynamicsAX(){
        
        $rs = odbc_exec(conexion_AX(), "select 


                                        ID,
                                        NETWORKALIAS, 
                                        NAME,
                                        COMPANY
                                        from USERINFO 
                                        where NETWORKALIAS ='".$_SESSION["s_username"]."'");
        $items=Array();
            while (odbc_fetch_row($rs)){
                $item['ID']=utf8_decode(odbc_result($rs,"ID"));
                $item['NETWORKALIAS']=odbc_result($rs,"NETWORKALIAS");
                $item['NAME']=odbc_result($rs,"NAME");
                $item['COMPANY']=odbc_result($rs,"COMPANY");
                array_push($items,$item);
            }
        odbc_close(conexion_AX());
        return $items;
    }
    
?>
